GraphWeaver for Visio Version 1.10 Copyright 2009 (有)さくらシステム
目次
GraphWeaver for Visioを使用して、グラフを描画する際の諸設定に関して、主に描画ページの設定、グラフ属性の設定等について記載しています。
尚、本ドキュメントはGraphWeaver for Visio Ver.1.10に関しての内容です。
バージョンにより、記載内容と異なる場合がありますので、ご注意ください。
各Namespace、クラス、メソッドの詳細については、同梱されたヘルプファイル(GraphWeaverForVisio.chm)を参照下さい。
GraphWeaver for Visioは、以下の図で示したライブラリ構成です。
Sakura.GW.Lib.File Sakura.GW.Lib.Graph Sakura.GW.Lib.Data Sakura.GW.Lib.GraphChart Sakura.GW.Manager Sakura.GW.AbstractLayer Sakura.GW.AbstractLayer.Visio Sakura.GW.Visio.Draw Microsoft
Office Visio User
Application
u User Application
ユーザ作成アプリケーション
u Microsoft Office Visio
グラフ描画対象アプリケーション
u Sakura.GW.Visio.Draw
Visio描画処理モジュール
u Sakura.GW.AbstractLayer.Visio
u Sakura.GW.AbstractLayer
GraphWeaver管理モジュール
u Sakura.GW.Manager
ライブラリ管理モジュール
u Sakura.GW.Lib.GraphChart
u Sakura.GW.Lib.Graph
u Sakura.GW.Lib.Data
u Sakura.GW.Lib.File
各処理モジュール
GraphWeaver for Visio APIを使用した、グラフ描画アプリケーションの構築手段です。
ここでは、Visual Studio上のC#による例を記載します。
プロジェクトの参照設定に参照の追加を行い、以下のDLLファイルを追加してください。
u Sakura.GW.AbstractLayer.dll
u Sakura.GW.AbstractLayer.Visio.dll
u Sakura.GW.Lib.Data.dll
u Sakura.GW.Lib.dll
u Sakura.GW.Lib.FileLib.dll
u Sakura.GW.Lib.Graph.dll
u Sakura.GW.Lib.GraphChart.dll
u Sakura.GW.Manager.dll
u Sakura.GW.Visio.Draw.dll
Visio2007 SDKを使用し、Visio.Applicationクラスのインスタンスを生成します。このタイミングでVisioが起動します。詳細に関しては、上記のSDKに付属する資料等をご参考ください。
Visioが可視状態で起動します。
e.g.)
Visio.Application application = new Microsoft.Office.Interop.Visio.ApplicationClass();
Visioが不可視状態で起動します。可視状態にするには、Visibleプロパティをtrueに変更します。
e.g.)
Visio.Application application =
(Visio.Application)new Microsoft.Office.Interop.Visio.InvisibleAppClass();
application.Visible
= true; //可視状態に変更
3.2.で作成したアプリケーションハンドルを引数に設定し、VisioAddInLib_drawクラスのインスタンスを生成します。
VisioAddInLib_draw(Application
application);
Application
: Microsoft Officeアプリケーションハンドル
e.g.)
Visio.Application
visioApp = new Visio.Application();
visioDrawModule =
new VisioAddInLib_draw(visioApp);
3.3.で作成したインスタンスをコンストラクタ引数に設定し、GraphWeaverMngクラスのインスタンスを生成します。
GraphWeaverMng(IVisioDrawAccess drawClass);
e.g.)
VisioAddInLib_draw
visioDrawModule; //Visio用描画モジュール
GraphWeaverMng
visioManager; //GraphWeaver管理マネージャ
visioManager =
new GraphWeaverMng(visioDrawModule);
3.3.で作成したインスタンスのResponseFuncプロパティに、処理終了通知時にコールバックされるCallback関数を登録します。
e.g.)
visioManager.ResponseFuncs
+=
new
GraphWeaverMng.callbackResponse(CallbackFunc);
//
GraphWeaver処理終了時のコールバック登録
3.3.で作成したインスタンスのVisioClosedFuncプロパティに、Visio終了通知時にコールバックされるCallback関数を登録します。
コールバックされた時に、上記で取得したVisioアプリケーションのインスタンスが手動で終了または外部から終了されたことが分かるので、以後インスタンスへのアクセスをしないようにしてください。
e.g.)
visioManager.VisioClosedFunc
+=
new
GraphWeaverMng.callbackVisioClosed(CallbackFunc);
//
Visio終了時のコールバック登録
3.3.で作成したインスタンスのstartメソッドを呼び出すことにより、マネージ処理を開始します。
e.g.)
visioManager.start(); //マネージ処理開始
グラフを描画するページを含むドキュメントを指定します。ドキュメントを指定する方法は3つあるので、下記の中から適切な方法で処理してください。
GraphWeaverでは、ドキュメントの管理をIndex値(long型の整数)で行うので、処理中のドキュメントに対応するIndex値を次の描画ページ指定において使用します。
この操作で指定したドキュメントを閉じて開く時には、再度指定が必要です。
GraphWeaverMngインスタンスのcreateDocumentメソッドを使用します。テンプレートを使用する場合は、引数templateDocPathにパスを指定します。
bool
createDocument(string templateDocPath, out long index);
e.g.)
long
docIndex;
visioManager.createDocument("", out docIndex) ;
既にVisioで開かれているドキュメントを対象にする場合は、GraphWeaverMngインスタンスのtakeoverDocumentメソッドを使用します。
引数documentHandleには、対象とするドキュメントのDocumentハンドル(Microsoft.Office.Interop.Visio.Document型)を渡します。
引数docName、docFullPathは、指定したドキュメントの情報で上書きされます。
一度も保存していないドキュメントを指定した場合、fullPathは空文字となります。
bool takeoverDocument(
object documentHandle,
out
string documentName,
out
string fullPath,
out long index );
開かれていない既存のドキュメントファイルを対象にする場合は、GraphWeaverMngインスタンスのopenDocumentメソッドを使用します。
引数fullPathにファイルのフルパスを指定し、成功した場合はドキュメントがオープンされます。
bool
openDocument(
string
fullPath,
out
string docName,
out long index );
描画対象ドキュメントを上記の描画ドキュメント指定によってGraphWeaverの管理下に置いた後、描画対象ページを指定します。
ここでは、ドキュメント指定した際に取得したIndex値を使用します。
ページを指定する方法は2つあるので、下記の中から適切な方法で処理してください。
GraphWeaverMngインスタンスのcreatePageメソッドを使用します。ページに名前をつける場合は、引数pageNameにパスを指定します。同一ドキュメント内に同一名のページを作成することはできないので、注意してください。
pageNameに空文字を指定した場合、任意の名前が割り振られます。
bool
createPage(long docIndex, ref string pageName);
e.g.)
string
pageName = "2次関数のグラフ";
visioManager.CreatePage(docIndex, pageName);
存在するページを対象にする場合は、GraphWeaverMngインスタンスのtakeoverPageメソッドを使用します。
引数pageNameに対象とするページ名を指定して下さい。
bool takeoverPage(long docIndex, string pageName);
e.g.)
string
pageName = "2次関数のグラフ";
visioManager.takeoverPage(docIndex, pageName);
グラフ描画を行う設定を、GraphWeaverDataクラスのインスタンスに設定します。設定は、インスタンスの各メソッド呼び出しによって行います。
e.g.)
GraphWeaverData mngInfo = new
GraphWeaverData();
u SetDocumentFile
『3.8.描画ドキュメント指定』で指定したドキュメントの情報を設定します。テンプレートを使用しないときは、TemplateFileFullPath引数に空文字を指定してください。また新規ドキュメントおよび未保存ドキュメント指定の時、引数FileFullPathは空文字になります。
void SetDocumentFile(
string
DocumentName,
string
FileFullPath,
string TemplateFileFullPath );
u SetPage
『3.9.描画ページ指定』で指定したページの描画情報を設定します。
『4.ページサイズ設定』を参照してください。
u SetDataSeriesNo
グラフで使用する系列数を設定します。初期値は1で、値の範囲は1〜 9です。
設定すると、SetDataFileおよびSetDataRawDataの情報がクリアされるので、まずこの設定から行ってください。
void SetDataSeriesNo (
int
SeriesNo ); //
系列数
u SetDataFile
グラフで使用するデータが格納されているファイルを指定します。
系列seriesの値の範囲は0 〜 (SetDataSeriesNoで指定した値-1) です。
同一系列番号でSetDataRowDataと併用はできません。
void SetDataFile(
int
series, //
系列番号
string
FileFullPath,
//ファイルパス
GraphWeaver_DataType
type ); //ファイルタイプ
★GraphWeaver_DataType ファイルタイプ
メンバ名 |
内 容 |
None |
未定義(初期値、使用不可) |
CsvFile |
CSVファイル |
BinaryFile |
バイナリファイル(未対応) |
u SetDataRowData
グラフで使用するデータを直接指定します。
系列seriesの値の範囲は0 〜 (SetDataSeriesNoで指定した値-1) です。
同一系列番号でSetDataFileと併用はできません。
List<Point>型のデータ群を引数pointListに指定します。Point変数の格納方法については『9.直接データ指定』を参照してください。
bool SetDataRowData (
int
series, //
系列番号
List<Point>
pointList
); //ポイントリスト
u SetGraphSize
ページに対するグラフ領域を設定します。
『5.グラフ領域設定』を参照してください。
u SetGraphTitle
グラフタイトルを設定します。表示位置はページ中央最上部に固定です。graphTitleに空欄を指定した場合は、描画しません。
void SetGraphTitle(
string
graphTitle,
//
グラフタイトル
GraphWeaver_FontAttribute titleAttr, //
フォント属性 );
★GraphWeaver_FontAttribute: フォント属性
プロパティ名 |
型名 |
説明 |
fontSize |
double |
フォントサイズ 単位はページ設定に依存します |
fontColor |
RGB |
フォントの色 ※補足を参照 setIndexメソッドでColorIndex指定 |
fontSizePoint |
double |
フォントサイズ 単位はpt (fontSizeと内部変数を共用しています) |
u SetGraphImageLimit
描画するグラフの象限を設定します。通常は全象限を対象にします。
public void SetGraphImageLimit(Quadrant
quadrant);
★Quadrant: 象限
メンバ名 |
内 容 |
QuadrantAll |
全象限を対象 |
Quadrant1 |
第1象限を対象 |
Quadrant2 |
第2象限を対象 |
Quadrant3 |
第3象限を対象 |
Quadrant4 |
第4象限を対象 |
Quadrant12 |
第1・2象限を対象 |
Quadrant23 |
第2・3象限を対象 |
Quadrant34 |
第3・4象限を対象 |
Quadrant14 |
第1・4象限を対象 |
u SetGraphAxis
グラフの軸属性を設定します。
『エラー! 参照元が見つかりません。.エラー! 参照元が見つかりません。』を参照してください。
u SetGraphAxisDetail
グラフの軸詳細属性を設定します。
『6.1.2.軸の詳細設定』を参照してください。
u SetGraphPoint
グラフの点属性を設定します。グラフの種類が折れ線グラフの時に有効です。
『7.点属性設定』を参照してください。
u SetGraphBar
グラフの棒属性を設定します。グラフの種類が棒グラフの時に有効です。
『8.棒属性設定』を参照してください。
3.10.1.で作成したGraphWeaverDataインスタンスのSetCommandメソッドに「グラフ描画」を指定し、3.4.で作成したGraphWeaverMngインスタンスのDoCommandメソッドにより、グラフ描画処理を開始します。
通常は、drawGraphAllコマンドを使用して描画し、中断はAbortコマンドを使用します。
void
SetCommand(GraphWeaverData.CommandID ID); // コマンドのセット
CommandID: コマンド
メンバ名 |
内 容 |
None |
未定義 (使用不可) |
Abort |
処理中断 |
loadData |
元データ読み込み ・SetDataFileで設定されたファイルからデータを読み込みます |
saveData |
元データへ書き込み (未対応) |
eraseData |
データ削除 ・SetDataFileで設定されたファイルを削除します |
setupGraph |
グラフ書式設定 ・読み込んだデータとグラフ設定を元にグラフ座標計算を行います loadDataコマンド実行済みの必要があります (SetDataFileで設定した系列データの場合) ・設定したデータとグラフ設定を元にグラフ座標計算を行います (SetDataRawDataで設定した系列データの場合) |
storeGraph |
グラフ書式への保存 (未対応) |
resetupGraph |
グラフ書式再設定 ・描画済みグラフに対し、現在保持しているデータを元に再計算を行います |
drawGraphAll |
グラフ一括描画
(loadData+setupGraph+drawGraph) グラフを描画するために必要なコマンドを一括で実行します |
drawGraph |
グラフ描画 グラフ座標計算済みのグラフを描画します setupGraph済みの必要があります |
redrawGraph |
グラフ再描画 グラフ描画済みのページに対して、一度グラフを消去し再描画します deleteGraph +
drawGraphと同じです |
deleteGraph |
グラフ削除 描画されたグラフを消去します(軸、点等がページから消去されます) |
reflectGraph |
表示グラフからの反映 (未対応) |
drawPoint |
データ点のみ描画 ページに対して、データ点およびそれに付随する要素の描画を行います |
deletePoint |
データ点のみ削除 描画済みページからデータ点およびそれに付随する要素の削除を行います |
redrawGraphPoint |
データ点のみ再計算描画 描画済みページからデータ点およびそれに付随する要素の削除を行い、再描画します deletePoint+drawPointと同じです |
bool DoCommand(long docIndex, GraphWeaverData
mngInfo); // コマンドの実行
e.g.)
mngInfo.SetCommand(GraphWeaverData.CommandID.drawGraphAll);
visioManager.DoCommand(docIndex, mngInfo);
『3.5. 処理終了Callback関数を登録』で設定したCallback関数が呼び出され、引数で渡される共通エラーIDにより描画結果がわかります。
ErrorID: 共通エラーID ※補足を参照
描画されたグラフをファイルに保存するには、GraphWeaverMngインスタンスのsaveDocumentメソッドを使用します。
引数indexには3.8.で取得したIndex値を、fullPathNameにはファイルのフルパスを指定して下さい。
bool saveDocument (Int64 index, string fullPathName);
e.g.)
string
documentName = @"c:\temp\test.vsd";
visioManager.saveDocument(docIndex, documentName);
開いているドキュメントを閉じるには、GraphWeaverMngインスタンスのcloseDocumentメソッドを使用します。
引数indexには3.8.で取得したIndex値を指定して下さい。
bool closeDocument (Int64 index);
e.g.)
visioManager.saveDocument(docIndex);
GraphWeaverData::SetPageを使用して、ページサイズの設定を行います。
ここで設定した単位は、ページ内の各値の単位として使用されるので注意してください。
void SetPage(
string pageName,
double Width,
double Height,
double Scaling,
LengthUnit Unit );
引数名 |
型名 |
説明 |
||
pageName |
string |
ページ名 |
||
Width |
double |
ページ幅 |
||
Height |
double |
ページ高さ |
||
Scaling |
double |
スケール係数 (通常は等倍の1.0) |
||
Unit |
LengthUnit |
単位 |
||
|
mm |
|
ミリ |
|
inch |
インチ |
ex) mngInfo.SetPage(pageName, 210, 297, 1.0, LengthUnit.mm);
Page Height Graph Width
SetPageで指定したWidth、Heightがそれぞれページの幅、高さになります。
Width、Heightの単位は、Unitの設定値に従います。
Scaling スケール係数は通常1.0にして下さい。また、ここで設定した属性に基づきページ設定を上書きするので、既存ページを指定する時は注意してください。
GraphWeaverData::SetGraphSizeを使用して、グラフ領域の設定を行います。
void SetGraphSize(
graphType graphType,
double Width,
double Height,
double WidthOffset,
double HeightOffset );
引数名 |
型名 |
説明 |
||
graphType |
graphType |
グラフの種類 |
||
|
LineChart |
|
折れ線グラフ |
|
BarChart |
棒グラフ |
|||
PieChart |
円グラフ (未対応) |
|||
CircularAreaChart |
チャート (未対応) |
|||
MeterChart |
動的メータグラフ (未対応) |
|||
Width |
double |
グラフ幅 |
||
Height |
double |
グラフ高さ |
||
WidthOffset |
double |
幅余白 |
||
HeightOffset |
double |
高さ余白 |
e.g.) mngInfo.SetGraphSize(GraphType.LineChart, 168.0, 237.0, 21.0, 30.0);
Page Graph Height Width WidthOffset HeightOffset
SetGraphSizeに指定したWidth、Heightがグラフ領域の幅、高さに、
WidthOffset、HeightOffsetが、ページ原点からのオフセット量(幅・高さ)になります。
本バージョンでは、ページ原点は左下になります。
値の単位は、GraphWeaverData::SetPageで指定したUnitの設定値に従います。
折れ線グラフ等で使用される軸の設定方法について説明します。
軸の設定方法には以下の2種類があり、どちらか一方の方法で設定してください。
・ 引数による設定
・ 軸情報設定クラスによる一括設定
軸設定に関して2つのメソッドを使用します。最低限必要な軸設定項目と、色などの詳細設定項目に分けて設定が可能です。詳細設定については、省略可能です。
GraphWeaverData::SetGraphAxisメソッドを使用して各軸の設定を行います。
void
SetGraphAxis(
AxisSpec
axisSpec,
bool bEnable,
double min,
double max,
double tics,
int mTics,
RGB
axisColor );
e.g.)
SetGraphAxis(
AxiSpec.AxisX , true , 0 , 10 , 5 , 5 , new RGB(ColorIndex.Black) );
引数名 |
型名 |
説明 |
axisSpec |
AxisSpec.AxisX |
X軸の設定 |
AxisSpec.AxisY |
Y軸の設定 |
|
bEnable |
bool |
軸の表示/非表示の設定 |
min |
double |
軸目盛りの最小値 (省略時 : 0) |
max |
double |
軸目盛りの最大値 |
tics |
double |
軸目盛りの間隔 |
mTics |
int |
軸目盛り間の分割数 |
axisColor |
RGB |
軸の色 ※補足を参照 |
★X軸 ( axisSpec =
AxisX ) ★Y軸 ( axisSpec = AxisY )
軸原点 tics mTics 軸原点 tics mTics
0 tics : 1 mTics : 5 0 1 2 tics : 5 mTics : 3 10 5
軸原点から、ticsで指定した間隔で第1補助線が引かれます。
第1補助線間をmTicsの指定値で分割し、第2補助線が引かれます。
max、minの指定値のうち絶対値が大きいほうが第1補助線の最大値となります。
bEnableにtrueを指定している場合のみ、X軸が表示されます。
ticsに0以下の値を指定した場合、第1補助線、第2補助線は表示されません。
mTicsに0以下の値を指定した場合、第2補助線は表示されません。
GraphWeaverData::SetGraphAxisDetailメソッドを使用して各軸の詳細設定を行います。
なお、このメソッドで設定される内容はSetGraphAxisメソッドを呼び出すと初期値に設定されます。
原点「0」のサイズ、色はX軸のTicFontSize / TicColorIndex設定に依存しています。
void
SetGraphAxisDetail(
axisSpec axisSpec,
string title,
double fontSize,
RGB fontColor,
double ticLength,
double ticThickness,
RGB ticColor,
double ticFontSize,
RGB ticFontColor,
double mTicLength,
double mTicThickness
RGB mTicColor );
e.g.)
mngInfo.SetGraphAxisDetail( AxisSpec.AxisX,
"X",
8.0, new RGB(ColorIndex.Blue),
5, 0.4, new RGB(ColorIndex.Green),
5.0, new RGB(ColorIndex.Red),
2.5,
0.2, new RGB(ColorIndex.Yellow));
引数名 |
型名 |
説明 |
axisSpec |
AxisSpec .AxisX |
X軸の設定 |
AxisSpec .AxisY |
Y軸の設定 |
|
title |
string |
グラフのタイトル |
fontSize |
double |
タイトルのフォントサイズ (単位はページサイズ設定に準ずる) |
fontColor |
RGB |
タイトルの色 ※補足を参照 |
ticLength |
double |
第1補助線の長さ |
ticThickness |
double |
第1補助線の太さ |
ticColor |
RGB |
第1補助線の色 ※補足を参照 |
ticFontSize |
double |
第1補助線単位のフォントサイズ |
ticFontColor |
RGB |
第1補助線単位の色 ※補足を参照 |
mTicLength |
double |
第2補助線の長さ |
mTicThickness |
double |
第2補助線の太さ |
mTicColor |
RGB |
第2補助線の色 |
★X軸 ( axisSpec = AxisX )
第1補助線 第2補助線 10 20 30 40
軸設定項目を軸情報設定クラスに対して設定し、それをGraphWeaverData:: SetGraphAxisPackにより設定します。必要な設定項目を一括で設定できます。各項目の内容は6.1.で解説したものと同じです。
軸の設定データを格納するためのGraphWeaver_AxisPackクラスインスタンスを生成します。そのインスタンスに各軸属性を設定し、『3.10.1.属性データ設定』で生成したインスタンスに一括設定します。
e.g.) GraphWeaver_AxisPack axisPack = new GraphWeaver_AxisPack();
axisPack.axisSpec
= AxisSpec.AxisX;
…
mngInfo.SetGraphAxisPack ( axisPack );
★GraphWeaver_AixsPackクラス
プロパティ名 |
型 |
説明 |
||
axisSpec |
AxisSpec |
軸種別 |
||
|
AxisX |
|
X軸 |
|
AxisY |
Y軸 |
|||
AxisZ |
Z軸 |
|||
Circle |
円軸 |
|||
bEnable |
bool |
有効フラグ true:軸表示, false:軸非表示 |
||
min |
double |
最小値 |
||
max |
double |
最大値 |
||
tickness |
double |
軸太さ |
||
aixsColor |
RGB |
軸の色 ※補足を参照 setIndexメソッドでColorIndex指定 |
||
title |
string |
軸名称 |
||
titleAttr |
GraphWeaver_FontAttribute |
軸名称フォント属性 |
||
additionalLine1 |
Additional1 |
第1補助線属性 |
||
additionalLine2 |
Additional2 |
第2補助線属性 |
★GraphWeaver_FontAttribute: フォント属性
プロパティ名 |
型名 |
説明 |
fontSize |
double |
フォントサイズ 単位はページ設定に依存します |
fontColor |
RGB |
フォントの色 ※補足を参照 setIndexメソッドでColorIndex指定 |
fontSizePoint |
double |
フォントサイズ 単位はpt (fontSizeと内部変数を共用しています) |
★Additional1クラス
プロパティ名 |
型 |
説明 |
tics |
double |
第1補助線きざみ値 |
ticLength |
double |
第1補助線長さ |
ticThickness |
double |
第1補助線太さ |
ticColor |
RGB |
第1補助線の色 ※補足を参照 setIndexメソッドでColorIndex指定 |
ticFontAttr |
GraphWeaver_FontAttribute |
第1補助線数値属性(きざみ値の数値表示属性) |
★Additional2クラス
プロパティ名 |
型 |
説明 |
mTics |
double |
第2補助線分割数 |
mTicLength |
double |
第2補助線長さ |
mTicThickness |
double |
第2補助線太さ |
mTicColor |
RGB |
第2補助線の色 ※補足を参照 setIndexメソッドでColorIndex指定 |
GraphWeaverData::SetGraphPointメソッドを使用して、点属性の設定を行います。
点情報設定クラス(GraphWeaver_PointPack)のインスタンスを作成し、点に関する情報を入力します。
e.g.) GraphWeaver_PointPack pointPack = new GraphWeaver_PointPack();
pointPack.style
= PointStyle.Circle;
…
★GraphWeaver_PointPackクラス
プロパティ名 |
型 |
説明 |
||
style |
PointStyle |
点のスタイル |
||
|
None |
|
未定義 (使用不可) |
|
Circle |
円 |
|||
Triangle |
三角形 |
|||
Square |
四角形 |
|||
Pentagon |
五角形 |
|||
Hexagon |
六角形 |
|||
Heptagon |
七角形 |
|||
Octagon |
八角形 |
|||
Star |
星 |
|||
Cross |
十字 |
|||
pointColor |
RGB |
点の色 ※補足を参照 setIndexメソッドでColorIndex指定 |
||
size |
double |
点のサイズ |
||
bConnect |
bool |
接続線の有無 |
||
lineColor |
RGB |
接続線の色 ※補足を参照 setIndexメソッドでColorIndex指定 |
||
lineThickness |
double |
接続線の太さ |
設定した点情報クラスを引数としてSetGraphPointメソッドを呼ぶことにより、点属性の設定が行われます。
void SetGraphPoint(
int
seriesNo, //系列番号
GraphWeaver_PointPack
pack
); //点情報設定クラス
e.g.) mngInfo.SetGraphPoint(
0, pointPack );
点情報設定クラスを使用せず、直接引数によって各要素の設定を行います。
void SetGraphPoint(
int
seriesNo,
PointStyle
style,
RGB pointColor,
double
size,
bool
bConnect,
RGB lineColor,
double
lineThickness);
引数名 |
型 |
説明 |
||
seriesNo |
int |
系列番号 |
||
style |
PointStyle |
点のスタイル |
||
|
None |
|
未定義 (使用不可) |
|
Circle |
円 |
|||
Triangle |
三角形 |
|||
Square |
四角形 |
|||
Pentagon |
五角形 |
|||
Hexagon |
六角形 |
|||
Heptagon |
七角形 |
|||
Octagon |
八角形 |
|||
Star |
星 |
|||
Cross |
十字 |
|||
pointColor |
RGB |
点の色 ※補足を参照 |
||
size |
double |
点のサイズ |
||
bConnect |
bool |
接続線の有無 |
||
lineColor |
RGB |
接続線の色 ※補足を参照 |
||
lineThickness |
double |
接続線の太さ |
e.g.) mngInfo.SetGraphPoint(PointStyle.Circle, new RGB(ColorIndex.Transparence),
2.0, true, new RGB(ColorIndex.Red), 0.5);
点 <線接続あり> 接続線 <線接続あり、点色は透明色> 接続線
点 <線接続なし>
styleにより、点の形状を設定します。指定した各形状(円、多角形、星、十字等)の中心点が、点の位置座標になります。
bConnectにtrueを指定した場合、点と点が接続線で結ばれます。
点を表示せず線だけ表示したい場合は、点の色を透明色(ColorIndex.Transparence)に設定してください。
GraphWeaverData::SetGraphBarメソッドを使用して、棒属性の設定を行います。
棒情報設定クラス(GraphWeaver_BarPack)のインスタンスを作成し、棒に関する情報を入力します。
e.g.) GraphWeaver_BarPack barPack = new GraphWeaver_BarPack();
barPack.style=
BarStyle.Normal;
…
★GraphWeaver_BarPackクラス
プロパティ名 |
型 |
説明 |
||
style |
BarStyle |
棒のスタイル |
||
|
None |
|
未定義 (使用不可) |
|
Normal |
通常 |
|||
Cumulative |
累積(未対応) |
|||
CumulativeRatio |
累積割合(未対応) |
|||
type |
BarType |
棒のタイプ |
||
|
None |
|
未定義(使用不可) |
|
Vertical |
縦棒 |
|||
Horizontal |
横棒 |
|||
barColor |
RGB |
棒の色 ※補足を参照 setIndexメソッドでColorIndex指定 |
||
width |
double |
棒の幅 |
設定した点情報クラスを引数としてSetGraphBarメソッドを呼ぶことにより、点属性の設定が行われます。
void SetGraphBar(
int
seriesNo, //系列番号
GraphWeaver_BarPack
pack ); //棒情報設定クラス
e.g.) mngInfo.SetGraphBar(
0, barPack );
棒情報設定クラスを使用せず、直接引数によって各要素の設定を行います。
void SetGraphBar(
int
seriesNo,
BarStyle
style,
BarType type
RGB barColor,
double
width
);
引数名 |
型 |
説明 |
||
style |
BarStyle |
棒のスタイル |
||
|
None |
|
未定義 (使用不可) |
|
Normal |
通常 |
|||
Cumulative |
累積(未対応) |
|||
CumulativeRatio |
累積割合(未対応) |
|||
type |
BarType |
棒のタイプ |
||
|
None |
|
未定義(使用不可) |
|
Vertical |
縦棒 |
|||
Horizontal |
横棒 |
|||
barColor |
RGB |
棒の色 ※補足を参照 setIndexメソッドでColorIndex指定 |
||
width |
double |
棒の幅 |
e.g.) mngInfo.SetGraphBar(PointStyle.Circle, new RGB(ColorIndex.Transparence),
2.0, true, new RGB(ColorIndex.Red), 0.5);
GraphWeaverDataクラスのインスタンスに対し、直接系列データを指定します。使用するデータの次元によってPoint型コンストラクタの引数が異なるので、データに合わせて処理してください。
9.1. 1次元データ
棒グラフで使用するデータは1次元データとし、各要素順にPoint型変数を作成してListを作成します。
e.g.) List<Point>
pointList = new List<Point>();
foreach
( double data in Data)
{
Point
pos = new Point(data); //1次元データとしてPoint作成
pointList.Add(
pos );
}
mngInfo.SetDataRowData ( 0,
pointList );
9.2. 2次元データ
折れ線グラフで使用するデータは2次元データとし、各要素Point型変数を作成してListを作成します。
e.g.) List<Point>
pointList = new List<Point>();
for
( int i = 0; i < Data.Count(); i++)
{
Point
pos = new Point(Data[i].x, Data[i].y); //2次元データとしてPoint作成
pointList.Add(
pos );
}
mngInfo.SetDataRowData ( 0,
pointList );
ErrorID: 共通エラーID
メンバ名 |
内 容 |
NoError |
エラーなし 正常終了 |
UnknownCommand |
不明コマンド コマンドIDが不明です |
NotSupportCommand |
未対応コマンド 現在サポートされてないコマンドを実行しました |
UnknownDataType |
データタイプ不明 不明なデータタイプが指定されました |
NotSupportDataType |
未対応データタイプ 未対応のデータタイプが指定されました |
UnknownFileType |
ファイルタイプ不明 不明なファイルタイプが指定されました |
NotSupportFileType |
未対応ファイルタイプ 未対応のファイルタイプが指定されました |
OpenFileError |
ファイルオープン失敗 指定されたファイルのオープンに失敗しました |
ReadFileError |
ファイルリード失敗 指定されたファイルの読み込みに失敗しました |
WriteFileError |
ファイルライト失敗 指定されたファイルへの書き込みに失敗しました |
CreateFileError |
ファイル作成失敗 指定されたファイルの作成に失敗しました |
DeleteFileError |
ファイル削除失敗 指定されたファイルの削除に失敗しました |
DataFormatError |
データフォーマットエラー 指定されたファイルの形式がデータタイプと一致しません |
DataLimitError |
データリミットエラー 指定されたファイルに格納されているデータ数が上限を超えました |
UnknownGraphType |
グラフタイプ不明 指定されたグラフタイプが不明です |
NotSupportGraphType |
未対応グラフタイプ 指定されたグラフタイプは未対応です |
GraphFormatError |
グラフフォーマットエラー グラフの項目設定(ページ・グラフ領域、軸、点、棒設定)に不正な設定があります |
NotSupportDrawError |
描画未対応 未対応の描画を実行しました |
DrawFormatError |
描画形式エラー 対応していない描画を実行しました |
DrawProcLimitError |
描画同時実行数エラー 同時描画数の上限を超えました |
DrawInternalError |
描画クラス内部エラー 描画モジュール内部エラーが発生しました |
ProcAbort |
処理中断 正常に処理が中断されました |
ProcLimitOver |
同時処理数オーバー 同時実行コマンド数の上限を超えました |
InternalError |
内部エラー GraphWeaver内部エラーが発生しました |
ColorIndex: 色
メンバ名 |
内 容 |
None |
未定義(使用不可) |
Transparence |
透明 |
White |
白 |
Black |
黒 |
Red |
赤 |
Green |
緑 |
Blue |
青 |
Yellow |
黄 |
Magenta |
マゼンタ |
Cyan |
シアン |
Brown |
茶 |